This specification relates to network packet encapsulation and routing.
Communication between networked devices often requires network addresses, such as internet protocol (IP) addresses, to identify senders and recipients of data across a network. In some networks, such as an IPv4 network, IP addresses may often overlap and/or be outnumbered by the devices connecting to the networks. To provide common network services, such as a web server providing web based services to a number of different source networks, one solution to address potential overlap in IP addresses is a network address translation (NAT) system. A NAT system allows clients behind source networks to communicate with server devices by translating IP addresses of the clients into a global address that the server devices can communicate with. NAT devices are typically single devices that require complex internals for supporting a large amount of address translation state while synchronizing with peer NAT devices.